package org.example.d8_generics;

import java.util.ArrayList;

public class Text {
    public static void main(String[] args) {
        //认识泛型
        ArrayList list = new ArrayList();
        list.add("java1");
        list.add("java2");
        list.add("java3");
        list.add(new Cat());

        for (int i = 0; i < list.size(); i++) {
         //   Object o = list.get(i);
            //  System.out.println(o);

            String e = (String) list.get(i);  //Incompatible types. Found: 'java.lang.Object', required: 'java.lang.String'
            System.out.println(e);
        }

        System.out.println("---------------------------------");
        ArrayList<String> list1 = new ArrayList<>();//jdk1.7开始：后面的<>数据类型可以不申明
        list1.add("jav0a1");
        list1.add("java2");
        list1.add("java3");
       // list1.add(new Cat()); 在这里就会直接提醒报错，因为前面已经说过是String类型的
        for (int i = 0; i < list1.size(); i++) {
         String e =  list1.get(i);  //这个时候在这里就不用强制转换
            System.out.println(e);
        }
    }
}
class Cat{}